package com.smartbus.bus.service.impl;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.smartbus.bus.mapper.LanguageTypesMapper;
import com.smartbus.bus.domain.LanguageTypes;
import com.smartbus.bus.service.ILanguageTypesService;

/**
 * 语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）Service业务层处理
 * 
 * @author ruoyi
 * @date 2025-09-24
 */
@Service
public class LanguageTypesServiceImpl implements ILanguageTypesService 
{
    @Autowired
    private LanguageTypesMapper languageTypesMapper;

    /**
     * 查询语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）
     * 
     * @param id 语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）主键
     * @return 语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）
     */
    @Override
    public LanguageTypes selectLanguageTypesById(Long id)
    {
        return languageTypesMapper.selectLanguageTypesById(id);
    }

    /**
     * 查询语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）列表
     * 
     * @param languageTypes 语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）
     * @return 语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）
     */
    @Override
    public List<LanguageTypes> selectLanguageTypesList(LanguageTypes languageTypes)
    {
        return languageTypesMapper.selectLanguageTypesList(languageTypes);
    }

    /**
     * 新增语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）
     * 
     * @param languageTypes 语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）
     * @return 结果
     */
    @Override
    public int insertLanguageTypes(LanguageTypes languageTypes)
    {
        return languageTypesMapper.insertLanguageTypes(languageTypes);
    }

    /**
     * 修改语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）
     * 
     * @param languageTypes 语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）
     * @return 结果
     */
    @Override
    public int updateLanguageTypes(LanguageTypes languageTypes)
    {
        return languageTypesMapper.updateLanguageTypes(languageTypes);
    }

    /**
     * 批量删除语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）
     * 
     * @param ids 需要删除的语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）主键
     * @return 结果
     */
    @Override
    public int deleteLanguageTypesByIds(Long[] ids)
    {
        return languageTypesMapper.deleteLanguageTypesByIds(ids);
    }

    /**
     * 删除语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）信息
     * 
     * @param id 语言类型管理，存储系统支持的所有语言类型（普通话、方言、外语等）主键
     * @return 结果
     */
    @Override
    public int deleteLanguageTypesById(Long id)
    {
        return languageTypesMapper.deleteLanguageTypesById(id);
    }
}
